package hz.mobileproject.pda.db;

import java.util.Map;

import org.greenrobot.greendao.AbstractDao;
import org.greenrobot.greendao.AbstractDaoSession;
import org.greenrobot.greendao.database.Database;
import org.greenrobot.greendao.identityscope.IdentityScopeType;
import org.greenrobot.greendao.internal.DaoConfig;

import hz.mobileproject.pda.entity.PrisonerPicBean;
import hz.mobileproject.pda.entity.request.Request_calling;
import hz.mobileproject.pda.entity.request.Request_Edu_inter;
import hz.mobileproject.pda.entity.request.Request_end;
import hz.mobileproject.pda.entity.request.Request_Imp_Call;
import hz.mobileproject.pda.entity.request.Request_Imp_End;
import hz.mobileproject.pda.entity.response.Response_loadCnf;
import hz.mobileproject.pda.entity.response.Response_loadPoliceInfo;
import hz.mobileproject.pda.entity.response.Response_loadPrisonerList;
import hz.mobileproject.pda.entity.response.Response_QueryCallRoll;
import hz.mobileproject.pda.entity.Test;

import hz.mobileproject.pda.db.PrisonerPicBeanDao;
import hz.mobileproject.pda.db.Request_callingDao;
import hz.mobileproject.pda.db.Request_Edu_interDao;
import hz.mobileproject.pda.db.Request_endDao;
import hz.mobileproject.pda.db.Request_Imp_CallDao;
import hz.mobileproject.pda.db.Request_Imp_EndDao;
import hz.mobileproject.pda.db.Response_loadCnfDao;
import hz.mobileproject.pda.db.Response_loadPoliceInfoDao;
import hz.mobileproject.pda.db.Response_loadPrisonerListDao;
import hz.mobileproject.pda.db.Response_QueryCallRollDao;
import hz.mobileproject.pda.db.TestDao;

// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.

/**
 * {@inheritDoc}
 * 
 * @see org.greenrobot.greendao.AbstractDaoSession
 */
public class DaoSession extends AbstractDaoSession {

    private final DaoConfig prisonerPicBeanDaoConfig;
    private final DaoConfig request_callingDaoConfig;
    private final DaoConfig request_Edu_interDaoConfig;
    private final DaoConfig request_endDaoConfig;
    private final DaoConfig request_Imp_CallDaoConfig;
    private final DaoConfig request_Imp_EndDaoConfig;
    private final DaoConfig response_loadCnfDaoConfig;
    private final DaoConfig response_loadPoliceInfoDaoConfig;
    private final DaoConfig response_loadPrisonerListDaoConfig;
    private final DaoConfig response_QueryCallRollDaoConfig;
    private final DaoConfig testDaoConfig;

    private final PrisonerPicBeanDao prisonerPicBeanDao;
    private final Request_callingDao request_callingDao;
    private final Request_Edu_interDao request_Edu_interDao;
    private final Request_endDao request_endDao;
    private final Request_Imp_CallDao request_Imp_CallDao;
    private final Request_Imp_EndDao request_Imp_EndDao;
    private final Response_loadCnfDao response_loadCnfDao;
    private final Response_loadPoliceInfoDao response_loadPoliceInfoDao;
    private final Response_loadPrisonerListDao response_loadPrisonerListDao;
    private final Response_QueryCallRollDao response_QueryCallRollDao;
    private final TestDao testDao;

    public DaoSession(Database db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
            daoConfigMap) {
        super(db);

        prisonerPicBeanDaoConfig = daoConfigMap.get(PrisonerPicBeanDao.class).clone();
        prisonerPicBeanDaoConfig.initIdentityScope(type);

        request_callingDaoConfig = daoConfigMap.get(Request_callingDao.class).clone();
        request_callingDaoConfig.initIdentityScope(type);

        request_Edu_interDaoConfig = daoConfigMap.get(Request_Edu_interDao.class).clone();
        request_Edu_interDaoConfig.initIdentityScope(type);

        request_endDaoConfig = daoConfigMap.get(Request_endDao.class).clone();
        request_endDaoConfig.initIdentityScope(type);

        request_Imp_CallDaoConfig = daoConfigMap.get(Request_Imp_CallDao.class).clone();
        request_Imp_CallDaoConfig.initIdentityScope(type);

        request_Imp_EndDaoConfig = daoConfigMap.get(Request_Imp_EndDao.class).clone();
        request_Imp_EndDaoConfig.initIdentityScope(type);

        response_loadCnfDaoConfig = daoConfigMap.get(Response_loadCnfDao.class).clone();
        response_loadCnfDaoConfig.initIdentityScope(type);

        response_loadPoliceInfoDaoConfig = daoConfigMap.get(Response_loadPoliceInfoDao.class).clone();
        response_loadPoliceInfoDaoConfig.initIdentityScope(type);

        response_loadPrisonerListDaoConfig = daoConfigMap.get(Response_loadPrisonerListDao.class).clone();
        response_loadPrisonerListDaoConfig.initIdentityScope(type);

        response_QueryCallRollDaoConfig = daoConfigMap.get(Response_QueryCallRollDao.class).clone();
        response_QueryCallRollDaoConfig.initIdentityScope(type);

        testDaoConfig = daoConfigMap.get(TestDao.class).clone();
        testDaoConfig.initIdentityScope(type);

        prisonerPicBeanDao = new PrisonerPicBeanDao(prisonerPicBeanDaoConfig, this);
        request_callingDao = new Request_callingDao(request_callingDaoConfig, this);
        request_Edu_interDao = new Request_Edu_interDao(request_Edu_interDaoConfig, this);
        request_endDao = new Request_endDao(request_endDaoConfig, this);
        request_Imp_CallDao = new Request_Imp_CallDao(request_Imp_CallDaoConfig, this);
        request_Imp_EndDao = new Request_Imp_EndDao(request_Imp_EndDaoConfig, this);
        response_loadCnfDao = new Response_loadCnfDao(response_loadCnfDaoConfig, this);
        response_loadPoliceInfoDao = new Response_loadPoliceInfoDao(response_loadPoliceInfoDaoConfig, this);
        response_loadPrisonerListDao = new Response_loadPrisonerListDao(response_loadPrisonerListDaoConfig, this);
        response_QueryCallRollDao = new Response_QueryCallRollDao(response_QueryCallRollDaoConfig, this);
        testDao = new TestDao(testDaoConfig, this);

        registerDao(PrisonerPicBean.class, prisonerPicBeanDao);
        registerDao(Request_calling.class, request_callingDao);
        registerDao(Request_Edu_inter.class, request_Edu_interDao);
        registerDao(Request_end.class, request_endDao);
        registerDao(Request_Imp_Call.class, request_Imp_CallDao);
        registerDao(Request_Imp_End.class, request_Imp_EndDao);
        registerDao(Response_loadCnf.class, response_loadCnfDao);
        registerDao(Response_loadPoliceInfo.class, response_loadPoliceInfoDao);
        registerDao(Response_loadPrisonerList.class, response_loadPrisonerListDao);
        registerDao(Response_QueryCallRoll.class, response_QueryCallRollDao);
        registerDao(Test.class, testDao);
    }
    
    public void clear() {
        prisonerPicBeanDaoConfig.clearIdentityScope();
        request_callingDaoConfig.clearIdentityScope();
        request_Edu_interDaoConfig.clearIdentityScope();
        request_endDaoConfig.clearIdentityScope();
        request_Imp_CallDaoConfig.clearIdentityScope();
        request_Imp_EndDaoConfig.clearIdentityScope();
        response_loadCnfDaoConfig.clearIdentityScope();
        response_loadPoliceInfoDaoConfig.clearIdentityScope();
        response_loadPrisonerListDaoConfig.clearIdentityScope();
        response_QueryCallRollDaoConfig.clearIdentityScope();
        testDaoConfig.clearIdentityScope();
    }

    public PrisonerPicBeanDao getPrisonerPicBeanDao() {
        return prisonerPicBeanDao;
    }

    public Request_callingDao getRequest_callingDao() {
        return request_callingDao;
    }

    public Request_Edu_interDao getRequest_Edu_interDao() {
        return request_Edu_interDao;
    }

    public Request_endDao getRequest_endDao() {
        return request_endDao;
    }

    public Request_Imp_CallDao getRequest_Imp_CallDao() {
        return request_Imp_CallDao;
    }

    public Request_Imp_EndDao getRequest_Imp_EndDao() {
        return request_Imp_EndDao;
    }

    public Response_loadCnfDao getResponse_loadCnfDao() {
        return response_loadCnfDao;
    }

    public Response_loadPoliceInfoDao getResponse_loadPoliceInfoDao() {
        return response_loadPoliceInfoDao;
    }

    public Response_loadPrisonerListDao getResponse_loadPrisonerListDao() {
        return response_loadPrisonerListDao;
    }

    public Response_QueryCallRollDao getResponse_QueryCallRollDao() {
        return response_QueryCallRollDao;
    }

    public TestDao getTestDao() {
        return testDao;
    }

}
